<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // 1. 定义一个字符串“str”变量
        let str = 'abc';

        // 2. 执行打印"start"
        console.log("start");

        try{
            // console.log(aaa);
            // let a = new str;
            // let arr = new Array(-1);

            //不能捕获语法错误！ 
            // let a={;
            
            // console.log('123');

            // 抛出错误
            // throw "错误信息"  
            throw new Error('错了');

        }catch(err){
            // err 错误信息
            // console.log(err);
            console.log(err.message);
            console.log(err.stack);
        }

        // 3. 错误类型
            // 3.1 引入错误 - 引用未定义变量
            // 3.2 类型错误 - new "str"
            // 3.3 范围错误 - new Array(-1)
            // 3.4 抛出错误信息 - throw "str"
            // 3.5 抛出错误对象 - new Error("error message"); 

        // 4. 捕获错误
        // 5. 处理错误
        // 6. 执行打印“end”     
        console.log("end"); 

    </script>
</body>
</html>